package likou;

public class countSubarrays2 {
    public long countSubarrays(int[] nums, int k) {
        int count=0;
        int ret=0;
        for(int i=0;i<nums.length;i++){
            ret=Math.max(ret,nums[i]);
        }

        for(int i=0;i<nums.length;i++){
            if(nums[i]==ret) count++;
        }

        int c=0;
        int left=0;
        int right=0;
        long ans=0;

        for(right=0;right<nums.length;right++){
            if(nums[right]==ret) c++;
            while(c==k){
                ans+=nums.length-right;
                if(nums[left]==ret) c--;
                left++;
            }
        }
        return ans;
    }
}
